Selective color correction applied to plurality of local color gamuts

ABSTRACT

A method is described for selective color correction of an original color image. In one embodiment, a color is selected by picking a colored pixel from the color image and a changed color, having a restricted color change, is associated with the selected color. All original colors, situated within a local color gamut, comprising the selected color, undergo a color modification according to the color change. The effect of the modification decreases as the original color reaches the boundary of the local color gamut. The selected color and changed color may be defined in the native color space, the local color gamut is preferentially defined by an action radius related to a psychometric color space. Two or more selective color corrections may be combined by a weighted mean modification, by choosing for each color change a weight value, which decreases as the selected color is more different from the original color.

FIELD OF THE INVENTION

The present invention relates to devices and methods for selectivecorrection of original colour images. More specifically the invention isrelated to an apparatus and a method for defining a colour changeinfluencing a restricted colour gamut.

BACKGROUND OF THE INVENTION

Colour images may be obtained by exposing photographic material to lightreflected or transmitted by a natural scene and subsequent processing.It may be desirable to reproduce such colour images in large quantities,using methods of electronic image processing. To achieve such areproduction, the colour image may be scanned by an electronic colourscanner, such as the Agfa SelectScan (SelectScan is a trade mark ofAgfa-Gevaert N.V.). Such a scanner divides the image into adjacentsquare or rectangular picture elements or pixels, and usually assigns toeach pixel three colour values, identified as the red, green and bluepixel value (RGB) respectively. By characterisation of the electronicscanner for colour images, each triplet of colour values RGB may beconverted to a point within a device independent colour space, such asCIE-XYZ, CIE-L* u* v* , etc. After that transformation, each such pointmay be transformed to a device dependent triplet, 4-tuple, etc. ofrequired stimulus values for an output device, such as a thermal dyecolour printer, an electrophotographic colour printer, or an imagesetter for generating three, four or more separation films or printingplates, to be used in a colour printing process, such as lithography,flexography, offset, etc. Recently High Fidelity or HiFi colourreproduction systems have gained more attention. As such, images may bepresented in a corresponding HiFi colour space, such as CMYKOG, meaningcyan, magenta, yellow, black, orange and green, where six inks havingthese colors are used in the printing process. An image as observed bythe acquisition device, or any electronic image, given by its RGB colourvalues, device independent colour values or output device dependentstimulus values may be regarded as an original image.

It is possible that colours on the original scene or in the originalimage need to be reproduced differently than as they were captured. Thismay be due to inadequate illumination conditions, improper settings ofthe image acquisition devices in the chain, or colour changes which mustbe deliberately imposed on the original image. In such cases, specificcolours need to be changed, while affecting other colours lessdramatically. In a page layout program Adobe Photoshop version 3.0(Adobe Photoshop is a trademark of Adobe Systems Incorporated which maybe registered in certain jurisdictions) colour adjustments are availableunder a "variations feature", that allows easy adjustment of imagecolour and brightness by previewing and choosing from a range of colouroptions; adjustments for brightness, contrast and midtones (gamma);controls for selectively adjusting hue, saturation and brightness;adjustable tonal curves and control points on curves; replacement ofcolour for correcting the colour of a selected area by adjusting itshue, saturation and brightness values; selective colour correction foradjusting the ink values of individual colour channels or plates byentering absolute or relative values; independent colour balanceadjustment for shadows, highlights and midtones. In this version, it ispossible to change the vertices of the RGB cube, i.e. red, green, blue,cyan, magenta, yellow, black and white, by means of sliders. It is alsopossible to change a neutral or grey point in the colour space. Thesliders are going from -100% to +100%, and can be set in an absolute orrelative mode. In the relative mode, the percentage is relative to theamount of CMYK of the colour changed. In the absolute mode, the changeis the amount of extra or less ink in percentage. Whenever a slider hasbeen moved, the image is updated interactively.

The method described above has some shortcomings. First of all, it isnot possible to indicate changes in an arbitrary chosen point.Furthermore, it is not possible to get control to what extent othercolours are affected by the required change to the selected colour.

The Color Companion plug-in for Photoshop, distributed by Van Ginneken &Mostaard, offers a number of fixed transformations, called flavours.These fixed transformations are stored on disk. The user mayinteractively select a number of these transformations, and apply oneafter the other to obtain a most desired colour correction. The chain oftransformations may be combined and treated as a new transformation, Thedisadvantage of fixed transformations is that the user cannot specifytransformations in an absolute way, i.e. by specifying which selectedcolour should be changed. By applying the transformations one after theother, the latter transformations may be influenced by the previous. Theelimination of one transformation in the beginning of the chain mayinfluence other transformations considerably.

DE 43 43 362 A1 discloses a method for selective colour correction, byselecting a plurality of colours, defining for each colour a colourchange, computing weighting values for each colour in a local colourgamut, according to the presence of a selected colour and a convolutionmatrix, or computing for each point within the local colour gamut a newcolour change, by convolving the original colour changes with such aconvolution matrix. A disadvantage with this method is that either theweighting values are not guaranteed to have value one at the selectedcolour, or that the new colour changes are not exactly the requiredcolour changes in the selected colours, which may be derived from FIG.10e and 12c respectively.

GB 2 117 902 A discloses a method for selective colour correction, inwhich a "sample", comprising a large amount of colours, is selected, arequired colour change is given for that sample, and a weightingfunction is defined for computing colour modifications. According tothis method it depends on the distribution of colours within the samplehaving the same lightness, which colour value (1.x₀.y₀) will get therequired colour change. This way, the interactive operator has no realcontrol over a selected colour which must get a required colour change,since x₀ and y₀ are merely mean values for different x and y valuescorresponding to colour points in the original image having the samelightness.

EP 0 441 558 A1 also discloses a method for selective colour correction,in which a colour is selected and target colours are defined. Accordingto this method it is not guaranteed that each selected colour will becorrected according to the target colour.

EP 0 566 914 A1 discloses a method for selective colour correction, bydefinition of a colour to be corrected, a target colour and an effectiverange. Although according to this method it may be guaranteed thatselected colours are corrected to target colours, this method is silentabout selective colour correction according to different target coloursin which it is guaranteed that all selected colours are correctedaccording to the required target colour.

OBJECTS OF THE INVENTION

It is therefore a first object of the invention to provide a method forselective colour correction of an original colour image.

It is a further object of the invention to impose subjective colourchanges on one or more selected colours and to influence a restrictedset of similar colours accordingly.

It is another object of the invention to offer to an operator anunlimited scope of colours to be changed and their variations for theselective colour correction process, without dramatically increasing theprocessing time.

It is a specific object of the invention to provide a method, whereindiscontinuities in colour transitions are not introduced by theselective colour correction process.

Further objects and advantages of the invention will become apparentfrom the description hereinafter.

SUMMARY OF THE INVENTION

The above mentioned objects are realised by the specific featuresaccording to claim 1. Preferred embodiments of the invention aredisclosed in the dependent claims.

Preferably a required change for each selected colour is specified alongwith its effect. Preferably, the value of each weighting function for arequired colour change is bounded by zero and one. Such a weightingfunction has preferably the value one in the corresponding selectedcolour and preferably the value zero in all different selected colours.This has the important advantage over prior art systems that theoperator gets what he wants, i.e. if the operator wants:

for selected colour μ₁ a required colour change δ₁, and

for selected colour μ₂ a required colour change δ₂,

then he will get such required colour changes for such colours in theoriginal image, however close or distant the selected colours are fromeach other.

Preferentially, the weighting function extends over different colourpoints neighbouring the selected colour, i.e. there is at least onepoint different from the corresponding selected colour for which theevaluated weighting function gives a value different from zero. Outsidea specific action radius or local colour gamut, centred around theselected colour, the weighting function has preferably the value zero.This concept has the advantage over the prior art that very fewparameters must be stored in order to characterise a selective colourcorrection with an extent as large as a local colour gamut, i.e.: thecoordinates of the selected colour, the coordinates of the colourchange, one to six action radii (in a three-dimensional colour space forweighting function definition) and one to three or six shapes for theweighting function. It is not necessary to pick or compute each colourpoint within the local colour gamut, nor is it necessary to store acolour change for all colours within the local colour gamut. The colourchanges are defined analytically, rather than discrete per colour in thecolour space or local colour gamut.

In a preferred embodiment, the sum of all weight functions, evaluated inone original colour, is less than or equal to one. Usually, most weightfunctions will have a value zero, because the original colour is notwithin the local colour gamut. If the original colour is within theintersection of two (or more) local colour gamuts for two (or more)different selected colours, traditional methods may give a sum of weightvalues larger than one, which is not preferred according to the currentinvention.

In a preferred embodiment, each weight function is based on an extentand a shape. Both may be defined by an interactive operator, orautomatically as discussed below. The extent gives the size of the areain which the weight function has non-zero values. The extent may bespecified by the user as one or more action radii. If several actionradii are defined, they are preferentially aligned each along acoordinate axis according to which the weight functions are defined. Inorder to define non-symmetrical local colour gamuts, two differentaction radii may be defined per coordinate axis. These action radii arepreferentially defined in a "user-friendly" colour space, e.g. HSL, HSVor Lch. HSL stands for Hue, Saturation, Lightness ; HSV stands for Hue,Saturation, Value, wherein Value basically corresponds to Lightness. Lchstands for Lightness, Chroma and Hue. Chroma basically corresponds toSaturation. Such "user-friendly" spaces have the advantage that a userhas more "feeling" about which colours will be affected by the selectivecolour correction. In a preferred embodiment, the extent and shape ofthe weighting functions is defined in such a "user-friendly" space,whereas the selected colours and colour changes are definedpreferentially in the native colour space of the original colour image,which is usually different from a "user-friendly" space.

The extent(s) may be entered by an interactive operator or may becomputed in the following way. An operator may select a set or "cloud"of colours, all being designated to a same colour change. From this setof colours, a mean colour value is computed and this mean colour valueacts as "selected colour". As such, locally only one colour is selected.If different colours need to be changed, other sets or "clouds" may giveanother mean colour value, which is used for determining the respectiveselected colours. For each such selected mean colour value, one requiredcolour change is defined and one weighting function is established. Theextent of the weighting function may be derived from the colour(s)within the cloud which is (are) most distant from the mean colour value.Preferably this distance is defined for each coordinate axis in thecolour space separately. Therefore each colour value within the set or"cloud" and also the mean colour value is projected on the threecoordinate axes. Preferentially, the action radius according to eachaxis is taken a the distance between the projected mean value and theprojected colour value in the "cloud" most distant from the projectedmean value. More preferentially, such distance is multiplied with afactor larger than 1, e.g. 1.1, to obtain the action radius. If for eachaxis one symmetrical action radius is required, then preferentially themaximum value of the action radii on both sides of the axis is taken. Ifone sphere-symmetric action radius is required, then preferentially themaximum action radius according to any coordinate axis is taken.Preferentially, the resulting action radius or radii is shown to theinteractive operator, who may decide to increase or decrease its value.In this way, the extent of each weighting function may be set tocomprise all colours contributing to said selected colour, i.e. thecolours in the "cloud" used to compute the mean colour value, serving asselected colour.

Also the shape of the weight function may be determined by such a"cloud" of colours. Most generally, the shape of each weighting functionis preferentially a non-ascending function along each coordinate axis,having a maximum value of 1.0 in the selected colour, and having a value0.0 from the point up to where the extent of the weighting function isdefined. If the "cloud" has a high distribution of colour points alongone coordinate axis, then it is advantageous to keep the weight valuefrom the weighting function along this axis as high as possible. If at aspecific point suddenly no points are present any more in the cloud,then the weighting value should preferentially decrease rapidly and tendto zero. A such, the shape of the weighting function is based on thedistribution of colours, within the "cloud", contributing to saidselected colour.

The colour space which is used to define the selected colour, colourchange or changed colour, and/or to compute the colour modification toan original colour is preferentially the same space as the colour spacein which the original image is given, i.e. the native colour space. Sucha native colour space may be RGB, Lab, CMY, CMYK, HiFi or a named colourspace. A named colour space may be represented by a list of (key,value)items. The "value" may be coordinates in a specific colour space.Examples of named colour spaces are : Munsell, Pantone, etc. Examples ofHiFi colour spaces are Pantone Hexachrome (trade name of Pantone Inc.),CMYKOG, etc. Such a space may be thus different from the space in whichthe shape and extent of the weighting function(s) are defined. Thenative colour space has the advantage that even very large colourchanges may be defined and applied to the original image. Trying todefine such a large colour change in a "device independent" colourspace, would give problems when transforming the modified originalcolour to the native colour space. For example, if in a CMYK process theK value is increased by a factor of 200% for some reason, this may bewell done in the CMYK space itself, but is hard to achieve via anintermediate colour transformation. According to the current invention,the original colour is transformed to the space according to which theweight functions are defined, the appropriate weight values areevaluated in that space. These weight values are used in the nativecolour space to weigh the colour changes and to add the weighted sum tothe original colour, in order to get the modified colour.

The effect and the extent of the local colour gamut may be controlled byat least one action radius for each selected colour, or one actionradius per coordinate axis in the colour coordinate system in which thelocal colour gamut is defined. Preferably the local colour gamut issubstantially smaller than the gamut of the original image, i.e. thevolume of the local colour gamut may be 1% or less than the volume ofthe total colour gamut of the original colour image. In anotherpreferred embodiment, for each selected colour, a left and right actionradius may be given for each coordinate axis, the size of each radiusmay be freely chosen. Outside the local colour gamut, as defined by oneor more action radii, the modifications to original colours will benihil or at least minimal. In a preferred embodiment, the selectedcolour and the changed colour are defined in the native colour space,i.e. the colour space in which the original colour image is given. Thismay be, as described before, RGB, CMY, CMYK, HiFi, etc. The action radiimay also be given in that space. In a more preferred embodiment however,the action radii are defined in a HSL space corresponding to the nativecolour space. This gives a logical control over the range of colours tobe affected, but still allows for exact selection of the colour to bechanged and the amount of change in the native colour space, which isoften RGB or CMYK.

In addition to the selected colour, the local colour gamut--identifiedby a set of action radii--and changed colour, a function may bespecified that indicates the decrease of colour modification as thedistance between the selected colour and the original colour increases.This function may be specified along the coordinate axes of the colourspace in which the colours are expressed, or more preferably in an HSLcolour space. Moreover, in a preferred embodiment, the form of thesurface described by colours with equal weight factor may be chosen.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention is described hereinafter by way of examples with referenceto the accompanying figures wherein:

FIG. 1 shows a specific embodiment for carrying out the method accordingto the current invention;

FIG. 2 shows an alternative user interface for choosing a selectedcolour, a changed colour, action radii and corresponding weightfunctions; and,

FIG. 3 shows another alternative user interface for choosing a localcolour gamut.

DETAILED DESCRIPTION OF THE INVENTION

While the present invention will hereinafter be described in connectionwith preferred embodiments thereof, it will be understood that it is notintended to limit the invention to those embodiments. On the contrary,it is intended to cover all alternatives, modifications, and equivalentsas may be included within the spirit and scope of the invention asdefined by the appending claims.

Preferentially, the method according to the current invention may beimplemented as a plug-in within the Photoshop environment, running on aninteractive workstation, and is referred to as "FotoFlow SelectiveColour Correction". This plug-in is copied to the Plug-ins folder ofPhotoshop. Preferentially, the AutoColorXT engine is copied to theColorEngines folder of Photoshop.

The FotoFlow Selective Colour Correction (FSCC) plug-in may then beactivated by selecting the ColorCorrection menu item in the FotoTunemenu with respect to Filter. After activating FSCC, relevant portions ofan image file are loaded from hard disk to display memory within theinteractive workstation and shown on a colour video monitor, coupled tothe interactive workstation, as a low resolution preview image (21), asshown in FIG. 1. This preview image, which will be further referred toas original preview (21), shows on the monitor original colours of theoriginal colour image. Along with a preview of the original image, achanged or corrected version of the preview image is shown, which willbe further referred to as corrected preview (22). At the start of theprocess, when no colours have been selected for conversion into achanged colour, the corrected preview (21) is identical to the originalpreview (22). Whenever a "preview button" (43) is activated, thecorrected preview is computed from the original preview and the requiredchanges.

A list box (23) is presented. This box contains a sequence number (24)for each selected colour. By pointing with a cursor to a specificsequence number (24) within the list box (23), the cyan, magenta, yellowand black colour values (25, 26, 27, 28 respectively) of the selectedcolour are shown in a "before" field (29), along with the cyan, magenta,yellow and black colour values (30, 31, 32, 33 respectively) of thecorresponding changed colour in an "after" field (34). The correspondingaction radii with respect to the cyan, magenta, yellow and blackcoordinate axes (35, 36, 37, 38 respectively) are displayed in an"action radius" field (39). These four action radii are the componentsof a four-dimensional action radius vector within the CMYK space. In theexample according to FIG. 1, the original colour and the changed colourare represented by their cyan, magenta, yellow and black components.Also the action radii are defined along the respective cyan, magenta,yellow and black coordinate axes. These CMYK values are ink values,given in percentage of full coverage by each specific ink. By adding thefour given percentages, a value for the total amount of four inks may bedisplayed as total ink value for the selected colour (40) and total inkvalue for the changed colour (41).

Alternatively, as shown in FIG. 2, the selected colour and the changedcolour may be defined by their colour components in another devicedependent system, such as the RGB space, corresponding to a specificcolour scanner. The "before field" gives the colour value for the red,green and blue component (46, 47, 48 respectively) of the selectedcolour. The visual appearance of the selected colour is represented inbox (61). This selected colour has to undergo a colour modification suchthat it looks like the changed colour (62). The colour values for thered, green and blue components (49, 50, 51 respectively) of this changedcolour are displayed in the "after field". The definition of the localcolour gamut is done in the HSL space. To find the reference or "centre"point for the local colour gamut in the HSL space, colour values for theselected colour, specified in an RGB colour space, may be converted to acylindrical HSL space, wherein H stands for a hue angle, S forsaturation radius and L for lightness, orthogonal to the circularHS-plane. The HSL space has the advantage that colours and colourdifferences may be assessed more subjectively. The previous colourspaces are device dependent. The local colour gamut is preferentiallydefined as a volume comprising the selected colour. For a volume definedin an orthogonal coordinate system, such as in the RGB, CMY or CMYKspace as in the previous example, the points of intersection ofcoordinate axes through the selected colour may be specified by theoperator as "action radii". According to these points of intersection, aconvex volume such as a cuboid or ellipsoid is constructed. If surfacesare constructed having equal weight factor, these have preferentiallyalso a convex shape. If the coordinate system is cylindrical, such asthe HSL system, the local colour gamut is preferentially delimited bytwo planes of constant hue angle (H₁ and H₂), two planes of constantlightness (L₁ and L₂) and two concentric cylinders of constantsaturation (S₁ and S₂). The first or left hue angle H₁ is defined by thehue of the selected colour and the action radius in the direction of anegative hue angle (52), specified by the operator. The second or righthue angle H₂ is defined by the hue of the selected colour and the actionradius in the direction of a positive hue angle (55), specified by theoperator. The first or left lightness L₁ is defined by the lightness ofthe selected colour and the action radius along the negative directionof the lightness axis (54), specified by the operator. The second orright lightness H₂ is defined by the lightness of the selected colourand the action radius along the positive direction of the lightness axis(57), specified by the operator. The first or left saturation S₁ isdefined by the saturation of the selected colour and the action radiusalong a direction towards the origin of the saturation axis (53),specified by the operator. The second or right saturation S₂ is definedby the saturation of the selected colour and the action radius along apositive direction of the saturation axis (56), specified by theoperator.

The operator may also specify a weight function, for specifying theeffect of a colour change--defined on a selected colour--on a specificoriginal colour within the local colour gamut. A different weightfunction may be defined for each coordinate axis in which the actionradii are given. The weight function applicable to difference in hueangle between the original colour and the selected colour (58) allowsthe operator to specify how much an original colour, having a hue angleH_(o), will undergo the colour change of a selected colour, having hueangle H_(s). The difference H_(o) -H_(s) is set out on a horizontal axisunder the curve (58), with the origin under the maximum of the curve,and the weight value is proportional to the height of the curve. In thesame way, the operator may select or specify the weight functionapplicable to the saturation difference between the original colour andthe selected colour (59) and the weight function applicable to thelightness difference between the original colour and the selected colour(60). The way how these weight functions are used to compute a colourmodification for an original colour is set out below.

The colour values of the selected colour (61) and the changed colour(62) according to FIG. 2 may also be expressed in a device independentor standard colour coordinate system, such as defined by the CIEcommission (Commission Internationale de l' Eclairage). This commissiondefined device independent colour spaces which are suitable forrepresenting colours in a method according to the current invention,such as CIE-L*a*b*, which is a psychometric colour space. In a preferredembodiment, the selected colour and changed colour may be given in theCIE-XYZ, CIE-xYz or CIE-L*a*b* coordinate system, whereas the actionradii are preferentially given in a polar or cylindrical CIE coordinatesystem, such as CIE-Lch.

If the subsequent printing process uses only cyan, magenta and yellowinks, the selected colour and the changed colour may also be given bytheir respective cyan, magenta and yellow components only. If theoriginal image is given in terms of a HiFi colour space, then it ispreferred to convert the colour values of each image pixel to a standarddevice independent colour space, such as CIE-L*a*b*. All the abovementioned colour spaces are almost equivalent in this sense that eachselected colour and each changed colour may be given a set of three orfour coordinate values, that are fully descriptive for these colours.Mainly the experience of the operator of the program is decisive forwhich coordinate system is preferably used. If the operator is used towork with additive colours (RGB), he will prefer a device dependentcoordinate system, dependent on the colour scanner or even on the colourvideo monitor. If the operator is used to think in terms of process inks(cyan, magenta, yellow and optionally black), he will prefer a CMY orCMYK colour space. If he is used to standardised device independentcolour spaces, such as those defined by the CIE, he will prefer one ofthese colour spaces. Unlike the definition of the selected colour andthe changed colour, the selection of the coordinate axes for definingthe action radii has a more serious impact on the corrected preview. Theaction radii are descriptive for the local colour gamut comprising theselected colour, and thus define the set of original colours which willbe affected by a modification. Also the extent of the modification ofeach original colour depends on the coordinate system to which theaction radii are related to, as will be discussed in more detail below.

Returning back to FIG. 1, the CMYK colour values of a selected colourmay be used as a starting point for the CMYK colour values of thecorresponding changed colour. The colour values of the selected colourmay be entered numerically via a keyboard connected to the interactiveworkstation, or these colour values may be picked by a cursor from aspecific location on the original preview (21), on which the selectedcolour appears. The total ink value for the selected colour (40) iscomputed by the interactive workstation and displayed on the videomonitor. By activation of an "add button", i.e. by moving the cursor,commanded by an electronic mouse connected to the interactiveworkstation, towards an "add field" (42) on the video monitor andclicking a mouse button, the CMYK values of the selected colour (25, 26,27, 28) are copied to the CMYK values of the changed colour (30, 31, 32,33). The values for the action radius (35, 36, 37, 38) are initialisedwith a suitable default value. The colour values of the changed colourmay now be changed freely. Also the values for the action radii may bechanged to more adequate values. The resulting modifications may bevisualised by moving the cursor to the "preview field" (43) and clickingthe electronic mouse.

The above actions may be repeated for several selected colours, eachtime selecting a selected colour, defining a corresponding changedcolour and giving one or more action radii, descriptive for a localcolour gamut comprising the selected colour. Each selected colour alongwith the other attributes is stored in a list, which is representedwithin the list box (23). A selected colour, along with its otherattributes, may also be deleted from the list, by selecting it withinthe list box (23) and by use of the "delete field" (44). The list ofselected colours and attributes may be saved in a file on hard disk fora deferred application to the entire original image or for later use,whenever the program is restarted. The selective colour correctiondefined by the list of selected colours and attributes may also beapplied directly to the entire original colour image, by activation ofthe "apply field" (45). What this application implies is described morein detail below.

In FIG. 3 the impact of the local colour gamut is shown. On ahue--saturation plane (63), displaying a full gamut of all possiblecombinations of hue and saturation at constant lightness, a curve (65)displays the projection of the local colour gamut in the hue--saturationplane. This way, the operator may assess interactively the extent of thelocal colour gamut in the hue and saturation dimensions. In order togive feedback about the extent in lightness of the local colour gamut, alightness axis (64) displays a projection (66) of the local colour gamuton this axis. On this diagram, also the selected colour (67) and thechanged colour (68) are visualised.

Once the modifications for original colours may be computed based on theselected colour, the changed colour, the action radii and the weightfunctions, these modifications may be incorporated in a global colourtransformation. Several application programs are available fortransforming the colour values of pixels of an input image, to obtain anoutput image, wherein the output pixels have output colour values. Oneof such programs is a program called Photoshop, which is a trade mark ofAdobe Systems Inc. The Photoshop application allows the introduction ofa plug-in. Such a plug-in may be regarded as a procedure that may modifydata structures managed by the Photoshop application. The input imagemay be such a data structure, modified by the plug-in to give an outputimage, which is another data structure for Photoshop. One such plug-inis "colormatcher exporter", within the "FotoTune" frame work (both aretrade names of Agfa-Gevaert N.V. in Mortsel, Belgium), which transformsRGB data signals, obtained e.g. by scanning an original by a colourscanner, to CMYK data signals, ready for the printing process, makinguse of ColorRendering dictionaries in a PostScript level 2 environment(PostScript is a trade name of Adobe Inc.). The "colormatcher exporter"makes use of a transformation table. This table, referred to as aColorLink, may be obtained by combination of a ColorTag for the scanningunit and a ColorTag for the recording unit. ColorLink and ColorTag aretrade names of Agfa-Gevaert N.V. The transformation table gives the CMYKvalues for specific RGB values, arranged on a sparse grid. This meansthat not every RGB combination may be found in that transformationtable, for obtaining a transformed value. The transformation for RGBvalues between the grid points may be found by some form ofinterpolation. It is now possible to modify such a transformation tableaccording to the required colour modifications for the original colours.This way of working has the advantage that the usual global colourtransformation (e.g. RGB to CMYK) is combined with the selective colourcorrection, and applied in one colour transformation step to the image.This saves a considerable amount of processing time. In a preferredembodiment, the grid lines of such a sparse table are selected such thatthe selected colours are situated on the intersection of such gridlines. More preferentially, the grid lines are more concentrated in theneighbourhood of such a selected point, or within the local colourgamut.

In a preferred embodiment, the parameters for selective colourcorrection are obtained interactively. Preferably, the original colourimage is shown on the screen of a colour video monitor. The selection ofthe colour that has to be changed may then be done by pointing to apixel within the original colour image having that selected colour. Theselected colour may also be picked from a hue--saturation plane (63) asshown in FIG. 3. Alternatively, the colour values of the selected colourmay be given by keyboard strokes or by sliders. The colour values of therequired changed colour may also be given numerically, or be retrievedfrom a slider or, more preferentially from a reference image or from ahue--saturation plane (63) as shown in FIG. 3. Such a reference image isa colour image having colours as they should be for the original imageafter selective colour correction.

Once the parameters for the selective colour correction have beendefined, the colour correction may be applied to an original colourimage, which is represented by three or more colour values per imagepixel, the colour values referring to a particular colour space. Thecolour corrections will have a local character, due to the definition ofa local colour gamut as discussed above. The pixels within the originalcolour image, having a colour outside all local colour gamuts, will nothave any modification applied to. If more than one colour is selected toundergo a colour change, preferentially first an isolated modificationfor an original colour is computed according to each selected colour,followed by the computation of a combined modification for that originalcolour, by averaging all isolated modifications for that originalcolour. Each original colour will thus undergo a combined modification.

If the original colour lies outside all local colour gamuts, thiscombined modification is preferentially nihil;

if the original colour lies within just one local colour gamut, thiscombined modification is preferentially equal to an isolatedmodification;

if the original colour lies within N local colour gamuts, this combinedmodification will be a weighted sum of N isolated modifications.

First will be discussed how an isolated modification is preferentiallycomputed. Three objects must be defined:

the selected colour, which may be described as a set of colour valueswithin a specific n-dimensional colour space, defining a point in thatspace, indicated as μ=(μ₁, . . . ,μ_(n));

the changed colour, which may be described in the same way as theselected colour. The changed colour may be given by absolute colourvalues or, which is equivalent, by values relative to the selectedcolour, indicated as colour change δ=(δ₁, . . . ,δ_(n)) The changedcolour is thus: μ+δ;

at least one action radius "vector", having a component in eachcoordinate direction: σ=(σ₁, . . . ,σ_(n)). The action radius componentsσ₁, . . . ,σ_(n) may be given in a colour space, different from thenative colour space, in which preferentially the selected colour isspecified. If an asymmetric action radius is required, two action radiiare defined: σ_(l) and σ_(r). The action radius defines the local colourgamut comprising the selected colour. If the components of the actionradius vector are equal, specification of just one action radius issufficient.

Colours belonging to the local colour gamut will be given a non-zeroisolated modification. In order to guarantee a continuoustransformation, the effect of a change of a particular selected colourand thus the modification (Δx₁, . . . Δx_(n)) to an original colour (x₁,. . . ,x_(n)) within the local colour gamut, preferentially decreases inthe direction of the border of the local colour gamut. This decreasingeffect may be shaped as a Gaussian function, by a weight function givenby the following equation: ##EQU1## As such, each component of thecolour modification may be given as a weighted component of the colourchange: Δx_(i) =w.δ_(i). In other words, the colour modification Δx isproportional to the colour change δ, the proportionality factor being aweight as defined above: Δx=w.δ. An original colour (x₁, . . . ,x_(n))belonging to the local colour gamut will, by this modification (Δx₁, . .. Δx_(n)) be transformed to a modified colour (x₁ +Δ₁, . . . ,x_(n)+Δx_(n)). The weight factor w in equation (1) is point symmetric withrespect to the selected colour μ=(μ₁, . . . ,μ_(n)).

If two different action radii have been defined, σ_(l) and σ_(r), thenan asymmetric weight factor is obtained, and the above equation becomes:##EQU2## where ζ equals l, if x_(i) <μ_(i) and ζ equals r, if x_(i)≧μ_(i).

Instead of specifying the radii in the colour space in which theoriginal colour image is given, it is preferred to specify the radii inanother related space. A suitable space for this purpose is the Lchspace. This allows to define the local colour gamut, comprising thecolours to be modified, in a more intuitive and more useful way for anoperator, using the selective colour correction system interactively.For the computation of the weight w or wζ, applicable to a specificoriginal colour (x₁, . . . ,x_(n)) comprised within the local colourgamut, a transformation from the native colour space (x₁, . . . ,x_(n))to the Lch colour space is necessary, in order to evaluate formulae (1)or (2). Also the selected colour μ=(μ₁, . . . ,μ_(n)) must betransformed to the Lch colour space in order to evaluate w or wζ informula (1) or (2) respectively.

As is known in the art, the extent of the Gaussian functione^(-Z).spsp.2 is infinite, which would render the "local colour gamut"completely global. However, if for at least one colour component theabsolute value of the difference |x_(i) -μ_(i) |>2σ_(i), then the valueof the weight factor is forced to vanish to zero, such that the localcolour gamut does not extend further than 2σ_(i) symmetrically aroundthe selected colour μ=(μ₁, . . . ,μ_(n))

The decreasing effect of the weight w may also be shaped by a piecewiselinear weight function, which is zero outside the local colour gamut andis linearly ascending to reach the value 1 in the point corresponding tothe selected colour μ=(μ₁, . . . ,μ_(n)). In one dimension such a weightfunction may be denoted as: ##EQU3## The function y=z₊ stands for y=0 ifz<0 and y=z if z≧0. This one-dimensional weight function w.sub.μσ (x)may be generalised to more dimensions in a rectangular way or in anellipsoidal way. The difference between these two approaches is that thelocal colour gamut is a cuboid or an ellipsoid. In the cuboid case, theformula for the weight factor becomes: ##EQU4## In the ellipsoidal case,the formula becomes: ##EQU5## wherein μ_(i) -σ_(i) ≦x_(i) ≦μ_(i) +σ_(i),and w=0 if the right hand side of the equation is lower than zero. Bothfunctions cause a local colour gamut, which does not extend further thanσ_(i) symmetrically around the selected colour μ=(μ₁, . . . ,μ_(n)).

The decreasing effect may also be shaped by a piecewise cubic polynomialweight function, with everywhere continuous derivatives up to order 2,which is zero outside the local colour gamut and is ascending to reachthe value 1 in the point corresponding to the selected colour μ=(μ₁, . .. ,μ_(n)). Such a weight function is commonly known as a spline functionand may be given by g(z)=2.z³ -3.z² +1 for z≧0. For z<0 it is defined bythe symmetrical function: g(z)=-2.z³ -3.z² +1. If z_(i) =(x_(i)-μ_(i))/σ_(i), the equations for the weights according to a rectangularor cuboid volume (equation 6) and ellipsoidal volume (equation 7) localcolour gamuts are given respectively by: ##EQU6## Also the local colourgamut established by these equations does not extend further than σ_(i)symmetrically around the selected colour μ=(μ₁, . . . ,μ_(n)).

In another preferred embodiment, the weight function may be shapedinteractively by the operator. Preferentially, the weight function hasthe following restrictions:

w(x_(i))=0 for x_(i) outside the interval [μ_(i) -σ_(i),μ_(i) +σ_(i) ]in the symmetrical case or [μ_(i) +σ_(li),μ_(i) +σ_(ri) ] in theasymmetrical case;

w(x_(i))=1 for x_(i) =μ_(i) ; and,

0≦w(x_(i))≦1 for x_(i) inside the above mentioned intervals.

The operator may interactively shape the weight function in onedimension, for example by giving some control points, which may be usedto define a Bezier curve (see Principles of Interactive ComputerGraphics Second Edition, by W. Newman and R. Sproull, ISBN 0-07-046338-7pages 315-318). Alternative ways for defining a weight curve may beused. By way of example, suitable weight functions are shown in FIG. 2(58, 59, 60).

In case of asymmetric action radii, σ_(l) and σ_(r), the local colourgamut may be found by gluing together the associated sectors (octant inthree dimensional colour space, hexadecant in four dimensional colourspace, etc. . . . ).

The above equations give expressions for a weight factor w to be appliedto the relative required colour change δ to a selected colour μ=(μ₁, . .. ,μ_(n)) in order to compute an isolated colour modification Δx to anoriginal colour x=(x₁, . . . ,x_(n)), situated within the local colourgamut enclosing the selected colour.

If two or more colours (μ_(j), j=1, . . . ) are selected, along with arequired colour change (δ_(j), j=1. . . ) for each and a local colourgamut for each, it is possible that two or more different local gamutsoverlap each other in one or more common gamut regions. Any originalcolour x, situated within such common gamut region, must get an isolatedcolour modification Δx_(j) according to each local colour gamut Λ_(j) inwhich it resides. Therefore, within such a common gamut region, acombined colour modification Δ*x is computed by combination of thevarious isolated colour modifications Δx_(j). An absolute requirement isthat the selected colours μ_(j) get a combined colour modificationΔ*x=δ_(j), in other words that each selected colour μ_(j) gets exactlythe colour change δ_(j) required for it. Therefore, a weighted average,which is interpolating in the selected colours, is preferred. Thecombined colour modification Δ*x may be written as a weighted sum of thevarious isolated colour modifications Δx_(j) as in the followingequation: ##EQU7## In the above equation, W_(j) must be such that w_(j)=δ_(kj) if x=μ_(k). δ_(kj) is the Kronecker delta, which means thatδ_(kj) =1 if k=j and δ_(kj) =0 if k≠j. In other words: all weights mustbe zero, except for the weight according to the required colourdifference corresponding to the selected colour, which weight must havethe value 1. A suitable weight function is given by the next equation:##EQU8##

In the above equation, the range value m stands for the number ofselected colours μ_(j). The index j stands for a specific selectedcolour μ_(j). D_(j) is a distance between:

the original colour x to be modified or for which the combined colourmodification is to be computed; and,

a specific selected colour μ_(j).

The distance function may be defined in several ways: as a Euclidiandistance, as a sum or product of absolute values of the coordinatedifferences or as the maximum of such absolute values.

The last equation only holds if the original colour x does not coincidewith a selected colour μ_(k), because D_(k) 0 in that case.

In a more preferred embodiment, the combination method according to theprevious two equations is improved in the following sense:

the effect on the weights w_(j) for an original colour x of a requiredchange on a selected colour μ_(k), whose local colour gamut does notcomprise the original colour x, is eliminated. The inclusion of such aselected colour in the last equation would decrease the weight valuew_(j).

discontinuities in the weight function are avoided by a combination overthe overlapping zones of local colour gamuts.

Preferentially, the following procedure is followed:

A. An original colour x is identified;

B. For each selected colour μ_(k), a weight factor w_(k) is computed,based upon the position of the original colour x with respect to theselected colour μ_(k), and according to at least one action radiusvector σ_(k), delimiting the corresponding local colour gamut Λ_(k), andpreferentially a positive function, which has a value 1.0 if x=μ_(k) andis non-ascending when the distance between the original colour x and theselected colour μ_(k) increases in a specific direction. The weightfactor w_(k) is zero if the original colour x does not belong to thelocal colour gamut Λ_(k) ;

C. The sum of all weight factors W=Σ_(k) w_(k) is computed.

D. If W≦1, then the combined colour modification Δ*x is computed fromthe equation: ##EQU9## E. If W>1, then each weight w_(k) is modifiedsuch that they sum to one, i.e. Σ_(k) w_(k) =1.0, and the above equationis applied.

The modification of w_(k) may be done by dividing each value by W. In amore preferred embodiment, the modification of w_(k) is such that valuesof w_(k) which were close to one, remain to have a value close to oneafter modification, whereas weight values w_(k) close to zero, getcloser to zero. This method implies less computational overhead andavoids "dips" in the colour modifications.

In a preferred embodiment, new weights z_(j) are obtained by multiplyingeach weight w_(j) by a factor [w_(j) /(1-w_(j))], and dividing by aconstant factor Σ_(k) w_(k) /(1-w_(k)). Because 0<w_(j) <1, the sumT=Σ_(j) z_(j) <1. Again, new weights w'_(j) are derived from z_(j), suchthat the their sum Σ_(j) w'_(j) =1 Therefore, the shortage (1-T) isdistributed over the weights z_(j) to obtain w'_(j), the sum of whichis 1. In other words, if the sum of the original weights w_(j) isgreater than 1, then the weights w_(j) are recalculated such that theywill sum to 1. Therefore, first each new weight z_(j) is calculated fromthe product of the original weight w_(j) and its weighted average [w_(j)/(1-w_(j))]/[Σ_(j) w_(j) /(1-w_(j))] with all the other weights. Whensummed, the new weights z_(j) will usually total less than 1. So, thedifference (1-T) between the new total weight T=Σ_(j) z_(j) and 1 isdistributed among the final weights w'_(j) based on a weighted averageof the difference between the new weight z_(j) and the original weightw_(j).

The above described method assigns to each original colour a combinedcolour modification, which may be zero, or determined by one or morerequired colour changes. Such combined colour modifications applied tooriginal colours define a colour transformation from the originalcolours to the modified colours. Thus, a modified colour from anoriginal colour x is preferentially given by x+Σ_(K) W_(K) (x)δ_(K),K=1, . . . N. This equation applies for N=1, 2, etc. For N=1, theweighting function W_(K) (x) may be simply a positive descending, ormore generally non-ascending, function as x goes farther away from theselected colour μ_(K). If N≧2, then each weighting function W_(K) (x)may be influenced by another selected colour μ_(J). J≠K, if bothselected colours are closer with respect to each other than some actionradii. This colour transformation may be computed on original colours,whose colour values are situated on a regular grid defined in the colourspace to which the colour values refer to. The thus computed colourtransformation may be stored in a table or database and stored on anon-volatile medium, such as a hard disk. A suitable format for storinga colour transformation is a ColorLink, as defined within theFotoLook/FotoTune environment. The stored selective colourtransformation may be recalled by an application program for applicationof the colour transformation to an original image. A suitableapplication program for applying a ColorLink to a digital continuoustone colour image is Photoshop equipped with a FotoTune plug-in. Testshave pointed out that applying the transformations, for selective colourcorrection, to an original colour image by making use of ColorLinksgives results which are comparable to direct application of thetransformation formula above to the image.

Alternatively, the stored selective colour transformation may beretrieved for combination with another colour transformation. A suitableapplication program for performing such a combination is available inthe Fototune/FotoLook environment, developed and marketed byAgfa-Gevaert N.V. This application program combines two or moreColorTags to deliver one ColorLink. This ColorLink may be successfullyused to convert original image data to transformed image data, suitableto offer the stimulus values to an output device for generating colourseparation films, printing plates, thermal dye colour images, etc.Colour separation films may be used to generate printing plates.Printing plates may be mounted on a press to generate printed copies ofthe colour image. The selective colour transformation may also beapplied to a given link, e.g. between a device dependent RGB colourspace and a device dependent CMYK colour space.

Ideally, the above equations should be evaluated using floating pointarithmetic. Most of the calculations however may be done by usinginteger arithmetic, based on 32 bit precision. Some operations, likemultiplication of function evaluation (exponentiation, spline function)may be performed by look-up table operations, using pre-calculatedtables.

The relative colour changes δ=(δ₁, . . . ,δ_(n)) may be represented byeight bit integer values.

The distance D_(j) between an original colour x and a selected colourμ_(j). or the square of it D_(j) ² may be represented by a value between0 and 2¹⁸.

The weight w_(j), for weighting an isolated colour modification, may berepresented by an integer value between 0 and 255, and is preferentiallycalculated by making use of look up tables, instead of using theanalytical representation of the local colour gamut/decreasing function.

The algorithm for computing modified colour y from an original colour xmay proceed as follows. First, the original colour x is converted fromthe native colour space to the corresponding HSL colour space, giving(h,s,1) colour values. If the native colour space was RGB, then theconversion is straight forward. If the native colour space is CMYK orCMY, then the original colour may first be converted to the RGB colourspace. If the C, M and Y components are given as integer numbers rangingfrom 0 to 255, then the R, G and B components may be found by:

    R=255-C, G=255-M, B=255-Y.

If also K is given, the above equations become:

    R=255-C-K, G-255-M-K, B=255-Y-K

Any negative result R, G or B is clipped to zero. After this, theconversion to (h,s,1) is done. The R,G,B values that have a range from 0to 255, are converted to h,s,1 values which also range from 0 to 255.Then, for each selected colour μ_(j), a suitable weight factor w_(j) iscomputed by:

    w.sub.j =w.sub.jh (h)*w.sub.js (s)*w.sub.j1 (1)

As such the weighting function W_(j) (x) is a scalar function of acolour vector x=(h,s,1). The notion scalar stresses the fact that theresult of evaluation is one single value. This value is preferentially areal number in the interval [0.0,1.0]. In the above equation, w_(jh) ()represents the weight function along the hue axis for the selectedcolour μ_(j), w_(js) () represents the weight function along thesaturation axis for the selected colour μ_(j) and w_(j1) () representsthe weight function along the lightness axis for the selected colourμ_(j). These functions are evaluated in the respective hue (h),saturation (s) and lightness (1) values of the original colour x.Because the colour values h, s and 1 may be represented by values from 0to 255, the three functions may be stored as three pre-computed look uptables, having 256 entries each. The pre-computation may be doneaccording to the above sketched non-ascending functions (gaussian,linear, spline or user defined as shown in FIG. 2, numerals 58, 59, 60).Preferentially, these weight functions have been scaled up by a factorof 256 and quantised to integer numbers. The result of themultiplication is reduced to the interval [0,256] by division with256*256.

If one w_(j) equals one (represented by 256), this means that theoriginal colour x coincides with the selected colour μ_(j). In thatcase, the modified colour y is found by y=x+δ_(j). The colour changeδ_(j) is preferentially given and stored in the same native colour spaceas the one in which the original colour x is given, such that themodified colour y is also found in the same native colour space. Forinteger arithmetic operations, this colour space is representedpreferentially by coordinate values ranging from 0 to 255.

If all w_(j) are smaller than 1, the sum of the weights W=Σ_(j) w_(j) iscomputed. If the sum of the weights W is smaller than 1, then themodified colour y is found by y=x+Σ_(j) w_(j) *δ_(j). After summationΣ_(j), a division is done by the appropriate scaling factor (256), whichwas introduced for w_(j).

If W is not smaller than 1, then the weights w_(j) are modified to moreappropriate weights w'_(j) as described above, such that colour changesin colours, selected close to each other, would not add up to a largercolour modification for an original colour in their neighbourhood, andsuch that the colour modifications in the original colours have acontinuous behaviour.

Instead of referring to a colour by its colour values within a specificcolour space, any colour may also be referred to by a name, referred toas psychometric colour name, such as deep blue, dark red, pink, etc.These colour names may be converted via a data-base to Lab values oranother suitable coordinate system.

The colour transformation may now be applied to the entire image or justto a delimited portion of it, called a subsection or regional selection.The thus transformed electronic image may be rendered on a photographicmedium such as film or paper, or printed on paper via an electrographicor thermal dye printing process.

The principles of the method according to the current invention may beequally applied to duotone imagery. This type of images may be printedby two different inks, each ink having a controlled density distributionfor representing an image. In that case, each colour may be defined in acolour space, characterising each colour by two colour values.

Having described in detail preferred embodiments of the currentinvention, it will now be apparent to those skilled in the art thatnumerous modifications can be made therein without departing from thescope of the invention as defined in the following claims.

Index of Reference Signs

21. original preview

22. corrected preview

23. list box

24. sequence number for selected colour

25. cyan colour value of selected colour

26. magenta colour value of selected colour

27. yellow colour value of selected colour

28. black colour value of selected colour

29. before field

30. cyan colour value of changed colour

31. magenta colour value of changed colour

32. yellow colour value of changed colour

33. black colour value of changed colour

34. after field

35. action radius for cyan component

36. action radius for magenta component

37. action radius for yellow component

38. action radius for black component

39. action radius field

40. total ink value for selected colour

41. total ink value for changed colour

42. add field

43. preview button field

44. delete field

45. apply field

46. red colour value of selected colour

47. green colour value of selected colour

48. blue colour value of selected colour

49. red colour value of changed colour

50. green colour value of changed colour

51. blue colour value of changed colour

52. action radius in direction of negative hue angle

53. action radius along a direction towards the origin of the saturationaxis

54. action radius along negative direction of lightness axis

55. action radius in direction of positive hue angle

56. action radius along positive direction of saturation axis

57. action radius along positive direction of lightness axis

58. weight function applicable to difference in hue angle betweenoriginal colour and selected colour

59. weight function applicable to saturation difference between originalcolour and selected colour

60. weight function applicable to lightness difference between originalcolour and selected colour

61. selected colour

62. changed colour

63. hue--saturation plane

64. lightness axis

65. projection of local colour gamut in hue--saturation plane

66. projection of local colour gamut on lightness axis

67. selected colour

68. changed colour

μ=(μ₁, . . . ,μ_(n)): selected colour

δ: colour change

σ=(σ₁, . . . ,σ_(n)): action radius vector

x=(x₁, . . . ,x_(n)): original colour

y: modified colour

Δx=(Δx₁, . . . ,Δx_(n)): colour modification

Δx_(j) : isolated colour modification

Δ*x: combined colour modification

Λ_(j) : local colour gamut

We claim:
 1. A method for selective correction of an original colour xin an original colour image, comprising the steps of:selecting at leasttwo different colours μ_(K), K-1, . . . N, N≧2, wherein each of thecolours μ_(K) represents a point in a n-dimensional colour space;defining for each selected colour μ_(K) a required colour change δ_(K) ;defining for each selected colour μ_(K) a weighting function W_(K) (x);and applying a colour modification to said original colour x, accordingto Σ_(K) W_(K) (x)δ_(K), K=1, . . . N wherein W_(K) (μ_(J))=0 if K≠J andW_(K) (μ_(K))=1.
 2. Method according to claim 1, wherein each weightingfunction obeys the following inequalities in its range of definition:0≦W_(K) (x)≦1.
 3. Method according to claim 1, wherein the sum of allweighting functions, evaluated in any original colour x, is not greaterthan one: Σ_(K) W_(K) (x)≦1.
 4. Method according to claim 1, whereineach weighting function W_(K) (x) is defined by an extent and a shape.5. Method according to claim 4, wherein said extent is defined by atleast one action radius or by one or two action radii per coordinateaxis, each action radius having said selected colour μ_(K) as origin. 6.Method according to claim 5, wherein said action radius is defined in acolour space having HSL, HSV or Lch coordinate axes.
 7. Method accordingto claim 4, wherein the extent is set to comprise all colourscontributing to said selected colour.
 8. Method according to claim 4,wherein the shape of the weighting function W_(K) (x) is different fordifferent coordinate axes.
 9. Method according to claim 4, wherein saidshape is based on the distribution of colours contributing to saidselected colour.
 10. Method according to claim 1, whereina. saidoriginal colour x, b. said selected colour μ_(K), c. said requiredcolour change δ_(K), and d. said colour modification is defined in anRGB, Lab, CMY, CMYK, HiFi or named colour space, preferentially the samespace for a, b, c and d.
 11. Method according to claim 1, wherein saidcolour modification is combined with a global colour transformation,suitable for application to said original colour image.
 12. Methodaccording to claim 11, wherein said global colour transformation isdefined on a sparse grid of colours.
 13. Method according to claim 1,wherein said selected colour is obtained from said colour image. 14.Method according to claim 1, wherein said colour change δ_(K) isobtained from the difference between:a desired colour selected on areference colour image and said selected colour μ_(K).
 15. Methodaccording to claim 1, wherein said weighting function W_(K) (x) is notincreasing as a distance D_(K) between said original colour x and saidselected colour μ_(K) increases, as long as D_(K) is smaller than adistance between said selected colour μ_(K) and any different selectedcolour μ_(J).
 16. Method according to claim 1, wherein said weightingfunction W_(K) (x) decreases according to a linear, quadratic, cubic, orgaussian function or is proportional to the inverse of a distance D_(K)between said original colour x and the corresponding selected colourμ_(K).
 17. Method according to claim 1, wherein said selected colour andsaid required colour change are defined in a native colour space.